pub fn new_birthday_probability(n: u32) -> f64 {
    let Some(start) = (365u32 + 1).checked_sub(n) else {
        return 1.0;
    };
    let np: f64 = (start..365).map(|x| x as f64 / 365.0).product();
    1.0 - np
}
